Various control systems have been developed to aid in the operation of engines. For example, in many internal combustion engines, several aspects of engine operation are controlled by an electronic control unit (ECU) that executes software to respond to engine parameters or operator inputs. ECUs can control fuel injection, valve timing, turbocharger operation, and many other engine systems or components. Additionally, ECUs can respond to data provided by sensors that monitor engine parameters, e.g., ECUs can respond to a signal from a throttle position sensor and adjust the timing of spark signals and fuel injection.
Although ECUs and other electronic engine control systems have been widely adopted, they suffer from several drawbacks. For example, the integration of an ECU with a new engine can require extensive software development and experimentation that can add substantial development costs. Changes to an engine's design or components can require major revisions to the software and add additional costs. Additionally, software bugs can cause an ECU to produce undesired engine operation. These bugs can result in sudden acceleration, stalling and other erroneous engine operation, accidents, engine damage, problematic emissions, costly recalls and/or many other aspects of poor engine performance. Furthermore, ECUs can be prone to failure as a result of their complex design and reliance on sensitive electronic components. For example, most ECU modules include microprocessors, printed circuit boards and other sensitive electronic components. These components can be susceptible to failure from heat, moisture, vibration or other conditions that are common to engine operating environments.